/*
 * Instruccion_VerEstructura.h
 *
 *	Autor	: GRUPO 1 - Fernandez, Gallinal, Maraggi, Tapia
 *	Catedra	: SERVETTO-FERRER-FERNANDEZ
 *	Materia	: Organizacion de Datos (75.06) - FIUBA
 *
 *	Genera archivos en forma de texto plano, que describen las
 *	estructuras y contenidos de los archivos de almacenamiento y
 *  control del sistema.
 */

#ifndef INSTRUCCION_VERESTRUCTURA_H_
#define INSTRUCCION_VERESTRUCTURA_H_

#include "Instruccion.h"



using namespace ManejadorArchivo;
class Instruccion_VerEstructura: public Instruccion {
private:
	char tipoEstructura;
	string nombreArchivo;
	fstream archivoEstructuras;
	fstream archivoEspaciosLibres;
	fstream archivoBloques;

public:
	Instruccion_VerEstructura(char id, char tipoEstructura, string nombreArchivo);

	virtual void ejecutar();

	void crearArchivos();

private:

	/*
	 * Crea el reporte de archivo control de estructuras de la biblioteca.
	 *@param nombreArchivo el nombre del archivo de reporte
	 */
	void crearReporteArchivoControl(string nombreArchivo);

public:
	virtual ~Instruccion_VerEstructura();
};

#endif /* INSTRUCCION_VERESTRUCTURA_H_ */
